#ifndef CHEQUE_H
#define CHEQUE_H
#include <QDjangoModel.h>
#include <QObject>
#include <QDate>
#include <Entidades/banco_cheque.h>

class Cheque : public QDjangoModel
{
    Q_OBJECT
    Q_PROPERTY(int id_cheque READ getId_cheque WRITE setId_cheque)
    Q_PROPERTY(QString numero_cheque READ getNumero_cheque WRITE setNumero_cheque)
    Q_PROPERTY(banco_cheque *banco READ getBanco WRITE setBanco)
    Q_PROPERTY(QDate fecha_emision READ getFecha_emision WRITE setFecha_emision)
    Q_PROPERTY(QString tipo READ getTipo WRITE setTipo)
    Q_PROPERTY(QString emisor READ getEmisor WRITE setEmisor)
    Q_PROPERTY(QString receptor READ getReceptor WRITE setReceptor)
    Q_PROPERTY(QDate fecha_cobro READ getFecha_cobro WRITE setFecha_cobro)

    Q_CLASSINFO("id_cheque", "primary_key=true")

public:
    explicit Cheque(QObject *parent = 0);

    int getId_cheque() const;
    void setId_cheque(int value);

    QString getNumero_cheque() const;
    void setNumero_cheque(const QString &value);

    banco_cheque *getBanco() const;
    void setBanco(banco_cheque *value);

    QDate getFecha_emision() const;
    void setFecha_emision(const QDate &value);

    QString getTipo() const;
    void setTipo(const QString &value);

    QString getEmisor() const;
    void setEmisor(const QString &value);

    QString getReceptor() const;
    void setReceptor(const QString &value);

    QDate getFecha_cobro() const;
    void setFecha_cobro(const QDate &value);

signals:

public slots:

private:
    int id_cheque;
    QString numero_cheque;
    //banco_cheque *banco;
    QDate fecha_emision;
    QString tipo; //(D = diferido, C = cruzado, P = al portador)
    QString emisor; // quién emite
    QString receptor; // a nombre de quien está
    QDate fecha_cobro; // en caso de ser cheque diferido
};

#endif // CHEQUE_H
